Communications networks connecting mobile devices, personal computers, servers, mainframes, and other devices have become the accepted mode for communicating information between users. This can include anything from basic sharing of photos to the sophistication and security required by large financial and banking institutions. It is increasingly more evident that securing communications is just as important as getting the information to its intended recipient. There have been many attempts at securing information using various encryption schemes, hiding data in VPN tunnels, using third parties to authenticate the sender of data, and many others. Although these methods work as long as they are configured properly, the inherent weakness lies in the actual personal interaction required to define the known security systems that are in use today. The personal interaction adds inherent error and is ultimately the weakest link in securing the communications. Another inherent weakness arises because the vast majority of these measures are implemented using software solutions. Although a mathematically complex algorithm can be established such that breaking an encryption scheme becomes increasingly more difficult, because current computer technology is continually becoming more efficient both in terms of speed and operating power it becomes increasingly easier to break these encryptions. What took years before, now only takes months, and will eventually be able to be done in days, hours, minutes, or even just several seconds. Software-based encryption methods are complex and therefore it is extremely difficult to detect all of the flaws, thereby leaving such encryption schemes vulnerable to compromise. Before information can be exchanged over a secured communications channel it is first necessary to establish the method of encryption to be used at both ends of the channel. Otherwise, transmitted data will be unreadable by an intended recipient. In order to accomplish secured communications, a communications channel must share an encryption key that can be used to encrypt and decrypt the data. If the encryption key is not shared then the recipient will not be able to read the received data. It is also very important that the key itself is kept secure. One such way is to share the key before any communication takes place, such as writing it down and hand it to the intended recipient. Alternatively, a different encryption method can be used to share the encryption key. This can be done, for example, by using a Public/Private key pair in which two keys are used to enable the secure communication. One key is kept secret, and never shared, while the other key is shared with everyone.
Current solutions to secure and authenticate communications over a network represent only short term solutions. To make communications secure using existing methods the encryption schemes must be constantly changed or abandoned and replaced once they have become too easy to break.